package com.sumainfor.zuul.entity;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 部门
 *
 * @author Jack Chen
 * @email pua@sumainfor.com
 * @date 2018-12-28 12:32:33
 */
@TableName("sys_dept")
@Data
public class SysDeptEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 部门编号
     */
    @TableId
    private Integer deptId;
    /**
     * 父级编号（只有一个,一级部门为0）
     */
    private Integer parentId;

    /**
     * 部门名称
     */
    private String name;
    /**
     * 归属区域编号集合
     */
    @TableField(exist = false)
    private List<Integer> areaList;
    /**
     * 部门类型  1公司 2部门 3服务中心
     */
    private Integer type;
    /**
     * 联系地址
     */
    private String address;

    //上级部门名称
    @TableField(exist = false)
    private String parentName;

    //归属区域的名称
    @TableField(exist = false)
    private String areaName;

    /**
     * ztree属性
     */
    @TableField(exist = false)
    private Boolean open;
    @TableField(exist = false)
    private List<?> list;

    /**
     * 负责人
     */
    private String master;
    /**
     * 联系方式
     */
    private String phone;
    /**
     * 传真
     */
    private String fax;
    /**
     * 邮箱
     */
    private String email;
    /**
     * 主负责人
     */
    private String primaryPerson;
    /**
     * 副负责人
     */
    private String deputyPerson;

    //服务中心经理编号           只有部门类型为3的时候
    @TableField("ManId")
    private Integer manId;
    //服务中心经理 名称
    @TableField(exist = false)
    private String manName;

    //服务中租后主管编号        只有部门类型为3的时候
    @TableField("BeId")
    private Integer beId;

    //服务租后主管 名称
    @TableField(exist = false)
    private String beName;

    /**
     * 排序
     */
    private Integer orderNum;
    /**
     * 废弃标志位 0正常 1废弃
     */
    private Integer delfg;
    /**
     * 部门编号
     */
    private String deptid;
    /**
     * Insert时间
     */
    private Date instm;
    /**
     * Insert端： 1 租客端 2市场部 3 工程部   4运营部   5财务部  6总经办 7发展部
     */
    private Integer insterm;
    /**
     * Insert操作者
     */
    private String insby;
    /**
     * Insert的类+方法：如 Class.Function
     */
    private String insfnc;
    /**
     * Update时间
     */
    private Date updtm;
    /**
     * Update端： 1 租客端 2市场部 3 工程部   4运营部   5财务部  6总经办 7发展部
     */
    private Integer updterm;
    /**
     * Update操作者
     */
    private String updby;
    /**
     * Update的类+方法：如 Class.Function
     */
    private String updfnc;
}
